Skip to content

OCPBUGS-85378: Fix OCP E2E test - Object count when exceed openshift.io/image-tags will ban to create new image references in the project #31155

Open
YamunadeviShanmugam wants to merge 7 commits into
openshift:mainfrom
YamunadeviShanmugam:fix-e2e-resource-quota
Open

OCPBUGS-85378: Fix OCP E2E test - Object count when exceed openshift.io/image-tags will ban to create new image references in the project #31155
YamunadeviShanmugam wants to merge 7 commits into
openshift:mainfrom
YamunadeviShanmugam:fix-e2e-resource-quota

Conversation

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor

@YamunadeviShanmugam YamunadeviShanmugam commented May 11, 2026

Problem
The Resource Quota test flakiness was caused by a hardcoded dependency on external image registry (quay.io), which forced the cluster’s ImageStream import controller to attempt network connections that are blocked. This resulted in timeouts as the test execution hung while waiting for image metadata that could never be retrieved.

Solution
Decoupled the test from the external network by replacing the references with internal OpenShift payload images discovered dynamically via exutil.SearchLatestImage. As these payload images are already stored in the cluster’s internal registry, their metadata resolves instantaneously, allowing the test to bypass the network hang while still proving that the ResourceQuota admission controller correctly blocks new objects once a namespace reaches its defined limit.

Testing

Before Fix

Will run 1 of 1 specs

[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Skipped:Disconnected]
I0511 16:13:27.420842 2872106 client.go:432] Waiting for RoleBinding "system:deployers" to be provisioned...
I0511 16:13:29.137287 2872106 client.go:469] Project "e2e-test-object-count-rq-nxzlg" has been fully provisioned.
STEP: create the image-tags and checking the usage @ 05/11/26 16:13:29.138
STEP: trying to tag a container image with v1 @ 05/11/26 16:13:29.627
Tag mystream:v1 set to quay.io/openshifttest/hello-openshift@sha256:4200f438cf2e9446f6bcff9d67ceea1f69ed07a2f83363b7fb52529f7ddd8a83.
STEP: waiting for an is importer to import a tag v1 into a stream mystream @ 05/11/26 16:13:30.881
STEP: trying to tag a container image with v2 @ 05/11/26 16:13:31.377
Tag mystream:v2 set to quay.io/openshifttest/base-alpine@sha256:3126e4eed4a3ebd8bf972b2453fa838200988ee07c01b2251e3ea47e4b1f245c.
STEP: waiting for an is importer to import a tag v2 into a stream mystream @ 05/11/26 16:13:32.708
STEP: trying to tag a container image with v3 @ 05/11/26 16:13:33.206
I0511 16:13:34.469253 2872106 client.go:1094] Error running oc --namespace=e2e-test-object-count-rq-nxzlg --kubeconfig=/tmp/configfile4211718485 tag openshift/hello-openshift --source=docker mystream:v3 -n e2e-test-object-count-rq-nxzlg:
StdOut>
The ImageStream "mystream" is invalid: []: Internal error: ImageStream.image.openshift.io "mystream" is forbidden: requested usage of openshift.io/image-tags exceeds the maximum limit per openshift.io/ImageStream (3 > 2)
StdErr>

After Fix
TestName: ./openshift-tests run-test "[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Suite:openshift/conformance/parallel]"

STEP: create the image-tags and checking the usage @ 05/11/26 18:14:14.172
STEP: trying to tag a container image with v1 @ 05/11/26 18:14:15.306
Tag mystream:v1 set to registry.ci.openshift.org/ocp/4.22-2026-05-09-090642@sha256:76e1baa07b1a1193777c56ef46bb9e3d5de21e199fd4a2036f92d90195d0dbe5.
STEP: waiting for an is importer to import a tag v1 into a stream mystream @ 05/11/26 18:14:17.042
STEP: trying to tag a container image with v2 @ 05/11/26 18:14:17.596
Tag mystream:v2 set to registry.ci.openshift.org/ocp/4.22-2026-05-09-090642@sha256:c1f899cd087fe8ba7eda607c544e965bfaa01a5f5c3204167fdcd67145620455.
STEP: waiting for an is importer to import a tag v2 into a stream mystream @ 05/11/26 18:14:19.524
STEP: trying to tag a container image with v3 @ 05/11/26 18:14:20.291
I0511 18:14:21.794883 2874972 client.go:1094] Error running oc --namespace=e2e-test-object-count-rq-7p598 --kubeconfig=/tmp/configfile1139119268 tag openshift/hello-openshift --source=docker mystream:v3 -n e2e-test-object-count-rq-7p598:
StdOut>
The ImageStream "mystream" is invalid: []: Internal error: ImageStream.image.openshift.io "mystream" is forbidden: requested usage of openshift.io/image-tags exceeds the maximum limit per openshift.io/ImageStream (3 > 2)

Summary by CodeRabbit

  • Tests
    • Image-tag quota test now runs and no longer skipped.
    • Source images are discovered dynamically instead of being hard-coded, improving reliability.
    • Test sequencing enhanced to wait for image metadata to be populated before progressing.
    • Resource-quota polling made more robust by using a context-aware wait mechanism, reducing flakiness.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: automatic mode

@openshift-ci-robot
Copy link
Copy Markdown

@YamunadeviShanmugam: An error was encountered adding this pull request to the external tracker bugs for bug OCPBUGS-85378 on the Jira server at https://redhat.atlassian.net. No known errors were detected, please see the full error message for details.

Full error message. failed to add remote link: failed to add link: title - The length of the 'Link Text' field cannot exceed 255 characters.: request failed. Please analyze the request body for more details. Status code: 400:

Please contact an administrator to resolve this issue, then request a bug refresh with /jira refresh.

Details

In response to this:

Problem
The Resource Quota test flakiness was caused by a hardcoded dependency on external image registry (quay.io), which forced the cluster’s ImageStream import controller to attempt network connections that are blocked. This resulted in timeouts as the test execution hung while waiting for image metadata that could never be retrieved.

Solution
Decoupled the test from the external network by replacing the references with internal OpenShift payload images discovered dynamically via exutil.SearchLatestImage. As these payload images are already stored in the cluster’s internal registry, their metadata resolves instantaneously, allowing the test to bypass the network hang while still proving that the ResourceQuota admission controller correctly blocks new objects once a namespace reaches its defined limit.

Testing

Before Fix

Will run 1 of 1 specs

[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Skipped:Disconnected]
I0511 16:13:27.420842 2872106 client.go:432] Waiting for RoleBinding "system:deployers" to be provisioned...
I0511 16:13:29.137287 2872106 client.go:469] Project "e2e-test-object-count-rq-nxzlg" has been fully provisioned.
STEP: create the image-tags and checking the usage @ 05/11/26 16:13:29.138
STEP: trying to tag a container image with v1 @ 05/11/26 16:13:29.627
Tag mystream:v1 set to quay.io/openshifttest/hello-openshift@sha256:4200f438cf2e9446f6bcff9d67ceea1f69ed07a2f83363b7fb52529f7ddd8a83.
STEP: waiting for an is importer to import a tag v1 into a stream mystream @ 05/11/26 16:13:30.881
STEP: trying to tag a container image with v2 @ 05/11/26 16:13:31.377
Tag mystream:v2 set to quay.io/openshifttest/base-alpine@sha256:3126e4eed4a3ebd8bf972b2453fa838200988ee07c01b2251e3ea47e4b1f245c.
STEP: waiting for an is importer to import a tag v2 into a stream mystream @ 05/11/26 16:13:32.708
STEP: trying to tag a container image with v3 @ 05/11/26 16:13:33.206
I0511 16:13:34.469253 2872106 client.go:1094] Error running oc --namespace=e2e-test-object-count-rq-nxzlg --kubeconfig=/tmp/configfile4211718485 tag openshift/hello-openshift --source=docker mystream:v3 -n e2e-test-object-count-rq-nxzlg:
StdOut>
The ImageStream "mystream" is invalid: []: Internal error: ImageStream.image.openshift.io "mystream" is forbidden: requested usage of openshift.io/image-tags exceeds the maximum limit per openshift.io/ImageStream (3 > 2)
StdErr>

After Fix
TestName: ./openshift-tests run-test "[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Suite:openshift/conformance/parallel]"

STEP: create the image-tags and checking the usage @ 05/11/26 18:14:14.172
STEP: trying to tag a container image with v1 @ 05/11/26 18:14:15.306
Tag mystream:v1 set to registry.ci.openshift.org/ocp/4.22-2026-05-09-090642@sha256:76e1baa07b1a1193777c56ef46bb9e3d5de21e199fd4a2036f92d90195d0dbe5.
STEP: waiting for an is importer to import a tag v1 into a stream mystream @ 05/11/26 18:14:17.042
STEP: trying to tag a container image with v2 @ 05/11/26 18:14:17.596
Tag mystream:v2 set to registry.ci.openshift.org/ocp/4.22-2026-05-09-090642@sha256:c1f899cd087fe8ba7eda607c544e965bfaa01a5f5c3204167fdcd67145620455.
STEP: waiting for an is importer to import a tag v2 into a stream mystream @ 05/11/26 18:14:19.524
STEP: trying to tag a container image with v3 @ 05/11/26 18:14:20.291
I0511 18:14:21.794883 2874972 client.go:1094] Error running oc --namespace=e2e-test-object-count-rq-7p598 --kubeconfig=/tmp/configfile1139119268 tag openshift/hello-openshift --source=docker mystream:v3 -n e2e-test-object-count-rq-7p598:
StdOut>
The ImageStream "mystream" is invalid: []: Internal error: ImageStream.image.openshift.io "mystream" is forbidden: requested usage of openshift.io/image-tags exceeds the maximum limit per openshift.io/ImageStream (3 > 2)

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@YamunadeviShanmugam YamunadeviShanmugam changed the title OCPBUGS-85378: Fix OCP E2E test - [sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Skipped:Disconnected] [Suite:openshift/conformance/parallel] OCPBUGS-85378: Fix OCP E2E test - Object count when exceed openshift.io/image-tags will ban to create new image references in the project May 11, 2026
@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/jira refresh

@openshift-ci-robot openshift-ci-robot added jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. labels May 11, 2026
@openshift-ci-robot
Copy link
Copy Markdown

@YamunadeviShanmugam: This pull request references Jira Issue OCPBUGS-85378, which is valid.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (5.0.0) matches configured target version for branch (5.0.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

/jira refresh

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci Bot requested review from deads2k and p0lyn0mial May 11, 2026 12:47
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 11, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 686d3ed1-2d11-4eac-9668-36839479cbdd

📥 Commits

Reviewing files that changed from the base of the PR and between b96e4f7 and 96733ba.

📒 Files selected for processing (1)
  • test/extended/quota/resourcequota.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • test/extended/quota/resourcequota.go

Walkthrough

An image-tag quota enforcement test is re-enabled and refactored to discover OpenShift ImageStream tags dynamically from the openshift namespace, tag using --source=istag, and poll ImageStream/ResourceQuota status with context-aware polling.

Changes

Image-Tag Quota Test Re-enablement & Dynamic Source Selection

Layer / File(s) Summary
Imports and test setup
test/extended/quota/resourcequota.go (lines ~6–13, ~222–223)
Added imports (sort, time, imageutil) and replaced the previous skipped test/namespace setup with testProject := oc.SetupProject() to run the image-tag quota test.
Dynamic OpenShift ImageStream tag picker
test/extended/quota/resourcequota.go (lines ~288–331)
New pickOpenshiftSourceISTagsForTagQuota() lists ImageStreams in the openshift namespace, selects a resolved status tag per stream (prioritizing the default tag ordering), sorts candidates, and returns up to three openshift/<stream>:<tag> references; test skips if fewer than three are found.
Tagging flow and assertions
test/extended/quota/resourcequota.go (lines ~262–284, ~262–349)
Test now tags mystream:v1 and mystream:v2 using oc tag --source=istag from the first two discovered refs, waits for status propagation, then attempts tagging mystream:v3 from the third ref and asserts it fails with a forbidden/exceeded-quota error.
ImageStream status polling helper
test/extended/quota/resourcequota.go (lines ~333–348)
Added waitForImageStreamStatusTagsPopulated() which polls until an ImageStream's status contains the provided tags, ensuring tag operations are reflected in status before continuing.
ResourceQuota polling adjustment
test/extended/quota/resourcequota.go (lines ~350–353)
waitForResourceQuotaStatus updated to use utilwait.PollUntilContextTimeout and pass the poll context into the ResourceQuotas(...).Get call for context-aware polling.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 9 | ❌ 3

❌ Failed checks (3 warnings)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 25.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Test Structure And Quality ⚠️ Warning Missing assertion messages and inconsistent polling. Helper functions use deprecated PollImmediate; waitForResourceQuotaStatus updated but others not. Add messages to Expect assertions. Update waitForLimitRangeStatus and waitForImageStreamStatusTagsPopulated to match waitForResourceQuotaStatus using PollUntilContextTimeout with context passing.
Microshift Test Compatibility ⚠️ Warning Three tests use SetupProject() which requires unavailable Project API on MicroShift: lines 91, 170, 222. None have MicroShift protection labels or runtime checks. Add [apigroup:project.openshift.io] to test names at lines 91, 170, 222, OR add [Skipped:MicroShift], OR use IsMicroShiftCluster() checks to skip when Project API unavailable.
✅ Passed checks (9 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly references the specific bug (OCPBUGS-85378) and describes the core change: fixing an E2E test for ResourceQuota image-tags enforcement by replacing hardcoded external image references with dynamic OpenShift payload images.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed All test names in the PR are stable and deterministic. Test titles contain only static strings with no dynamic information. Dynamic values are properly placed in test bodies, not titles.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Test validates quota/admission control which works on SNO. Uses internal ImageStreams, no pod scheduling or node assumptions.
Topology-Aware Scheduling Compatibility ✅ Passed This PR modifies only a test file with E2E test cases for ResourceQuota. No deployment manifests, operator code, or controllers are modified. No scheduling constraints are introduced.
Ote Binary Stdout Contract ✅ Passed No OTE Binary Stdout Contract violations found. The file contains no stdout writes (fmt.Print, log, klog) at process-level. Top-level code safely calls utility functions without stdout output.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed Modified test uses internal cluster ImageStreams with no IPv4 assumptions, hardcoded IPs, external registry access, or problematic URL construction. Compatible with IPv6 and disconnected environments.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@test/extended/quota/resourcequota.go`:
- Around line 259-260: SearchLatestImage errors are currently ignored for
cliImage and toolsImage; capture and check the returned errors (e.g., cliImage,
err := exutil.SearchLatestImage(...); toolsImage, err2 := ...) and explicitly
fail the test or return an error if either lookup fails before proceeding to the
oc tag step. Update the code around the SearchLatestImage calls to validate err
and err2, and produce a clear failure message referencing the image name
(cli/tools) so oc tag is never invoked with an empty or invalid image reference.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: b4877f1a-ee6b-4e7e-be5e-7eaabb6df5f2

📥 Commits

Reviewing files that changed from the base of the PR and between 4d95078 and d3cd554.

📒 Files selected for processing (2)
  • test/extended/quota/resourcequota.go
  • test/extended/util/search_latest_image.go

Comment thread test/extended/quota/resourcequota.go Outdated
@openshift-merge-bot openshift-merge-bot Bot added the ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review label May 11, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
test/extended/quota/resourcequota.go (1)

260-289: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Ensure the test can handle missing ImageStreams openshift/cli, openshift/tools, and openshift/must-gather on HyperShift and other constrained topologies.

The test uses --source=istag to reference ImageStreams from the openshift namespace, which requires openshift/cli:latest, openshift/tools:latest, and openshift/must-gather:latest to exist at test runtime. These are not part of the standard Samples Operator payload (unlike nodejs, perl, php, etc.) and may be unavailable on HyperShift hosted clusters or disconnected environments. If missing, the v1/v2 cases will fail with a non-forbidden error (not the expected success), and the v3 case may fail for the wrong reason, masking quota enforcement issues.

Either preflight these streams and skip with a clear message if absent, or simplify the test to tag a single well-known stream multiple times (e.g., openshift/cli:latestmystream:v1/v2/v3) to avoid depending on three independent payload streams.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@test/extended/quota/resourcequota.go` around lines 260 - 289, The current
test depends on three external ImageStreams (openshift/cli, openshift/tools,
openshift/must-gather) and should either preflight-check their presence or be
simplified to a single well-known stream; update the images setup/loop around
oc.Run("tag") in resourcequota.go so it first verifies each source
ImageStreamTag exists (e.g., call oc.Run("get").Args("imagestreamtag",
"<namespace>/<name>:latest") or use exutil.WaitForAnImageStreamTag) and if any
is missing call g.Skipf with a clear message, or alternatively replace the
images slice with a single stable source (e.g., Image: "openshift/cli:latest")
and reuse it for tags v1/v2/v3 to remove the dependency on multiple payload
streams; ensure the tagging loop (oc.Run("tag").Args(...)) and the subsequent
expectations remain unchanged aside from using the validated/consistent source.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@tatus`:
- Around line 87-102: The PollUntilContextTimeout success check currently
returns true when len(imported.Spec.Tags) >= 2, which can mask missing tags;
update the condition inside the wait.PollUntilContextTimeout callback (the
closure that calls
oc.AdminImageClient().ImageV1().ImageStreams(testProject).Get(ctx, bulkISName,
metav1.GetOptions{})) to require all source tags are present — e.g. compare
len(imported.Spec.Tags) to the expected number of sourceTags (use
len(sourceTags) or an explicit 3) or validate the imported tag names match the
sourceTags set before returning true so the poll only succeeds when every tag
(alpha, beta, gamma) is imported.

---

Outside diff comments:
In `@test/extended/quota/resourcequota.go`:
- Around line 260-289: The current test depends on three external ImageStreams
(openshift/cli, openshift/tools, openshift/must-gather) and should either
preflight-check their presence or be simplified to a single well-known stream;
update the images setup/loop around oc.Run("tag") in resourcequota.go so it
first verifies each source ImageStreamTag exists (e.g., call
oc.Run("get").Args("imagestreamtag", "<namespace>/<name>:latest") or use
exutil.WaitForAnImageStreamTag) and if any is missing call g.Skipf with a clear
message, or alternatively replace the images slice with a single stable source
(e.g., Image: "openshift/cli:latest") and reuse it for tags v1/v2/v3 to remove
the dependency on multiple payload streams; ensure the tagging loop
(oc.Run("tag").Args(...)) and the subsequent expectations remain unchanged aside
from using the validated/consistent source.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: ea789bd5-3f7b-4ad2-830b-5c0e0ae70670

📥 Commits

Reviewing files that changed from the base of the PR and between 4a6d4bf and b1ca2e2.

📒 Files selected for processing (2)
  • tatus
  • test/extended/quota/resourcequota.go

Comment thread tatus Outdated
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
test/extended/quota/resourcequota.go (1)

222-284: 💤 Low value

LGTM!

Optional: Add explanatory comment

Consider adding a brief comment before line 277 explaining why the wait is necessary:

+		// Ensure the ImageStream status reflects both tags before attempting v3,
+		// so the LimitRange admission controller sees the current tag count (2/2).
 		g.By("waiting until mystream records both tags so limit enforcement sees tag count before v3")

This helps future maintainers understand the synchronization requirement.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@test/extended/quota/resourcequota.go` around lines 222 - 284, Add a short
explanatory comment above the call to waitForImageStreamStatusTagsPopulated in
the test (the waitForImageStreamStatusTagsPopulated invocation inside the "when
exceed openshift.io/image-tags..." It block) stating that the wait ensures the
ImageStream's status has observed and recorded the two tags before attempting
the third tag so the quota enforcement logic sees the correct tag count; place
it immediately before the waitForImageStreamStatusTagsPopulated(...) call near
the end of the test to clarify the required synchronization for future
maintainers.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@test/extended/quota/resourcequota.go`:
- Around line 222-284: Add a short explanatory comment above the call to
waitForImageStreamStatusTagsPopulated in the test (the
waitForImageStreamStatusTagsPopulated invocation inside the "when exceed
openshift.io/image-tags..." It block) stating that the wait ensures the
ImageStream's status has observed and recorded the two tags before attempting
the third tag so the quota enforcement logic sees the correct tag count; place
it immediately before the waitForImageStreamStatusTagsPopulated(...) call near
the end of the test to clarify the required synchronization for future
maintainers.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 8ea7fd25-385f-40ad-9dd8-ebd9f8e10f3a

📥 Commits

Reviewing files that changed from the base of the PR and between b1ca2e2 and b96e4f7.

📒 Files selected for processing (1)
  • test/extended/quota/resourcequota.go

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@openshift-trt
Copy link
Copy Markdown

openshift-trt Bot commented May 13, 2026

Risk analysis has seen new tests most likely introduced by this PR.
Please ensure that new tests meet guidelines for naming and stability.

New tests seen in this PR at sha: b96e4f7

  • "[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Suite:openshift/conformance/parallel]" [Total: 3, Pass: 3, Fail: 0, Flake: 0]

Copy link
Copy Markdown
Member

@sosiouxme sosiouxme left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

Comment thread test/extended/quota/resourcequota.go
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 13, 2026
@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 14, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@mgencur
Copy link
Copy Markdown

mgencur commented May 14, 2026

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label May 14, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 14, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mgencur, sosiouxme, YamunadeviShanmugam

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest-required

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

4 similar comments
@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

@YamunadeviShanmugam
Copy link
Copy Markdown
Contributor Author

/retest

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 17, 2026

@YamunadeviShanmugam: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-trt
Copy link
Copy Markdown

openshift-trt Bot commented May 17, 2026

Risk analysis has seen new tests most likely introduced by this PR.
Please ensure that new tests meet guidelines for naming and stability.

New Test Risks for sha: 96733ba

Job Name New Test Risk
pull-ci-openshift-origin-main-e2e-vsphere-ovn-upi High - "[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Suite:openshift/conformance/parallel]" is a new test that was not present in all runs against the current commit.

New tests seen in this PR at sha: 96733ba

  • "[sig-api-machinery][Feature:ResourceQuota] Object count when exceed openshift.io/image-tags will ban to create new image references in the project [Suite:openshift/conformance/parallel]" [Total: 20, Pass: 20, Fail: 0, Flake: 0]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants